return {

    "vim-airline/vim-airline-themes",
    "jiangmiao/auto-pairs",
    "scrooloose/nerdcommenter",
    "tiagofumo/vim-nerdtree-syntax-highlight",
    "ryanoasis/vim-devicons",
    "mhinz/vim-startify",
    "easymotion/vim-easymotion",
    "chrisbra/csv.vim",
    "tpope/vim-surround",
    "BurntSushi/ripgrep",
    "tpope/vim-fugitive",
    "RRethy/vim-illuminate",
    "folke/tokyonight.nvim",

    -- {
        -- "mason-org/mason-lspconfig.nvim",
        -- opts = {},
        -- dependencies = {
            -- { "mason-org/mason.nvim", opts = {} },
            -- "neovim/nvim-lspconfig",
        -- },
    -- },

    -- NERDTree
    {
        "preservim/nerdtree",
        cmd = "NERDTreeToggle",
        config = function() require("plugins.nerdtree") end,
    },

    -- Airline
    {
        "vim-airline/vim-airline",
        config = function() require("plugins.airline") end,
    },

 
    -- CoC
    {
        "neoclide/coc.nvim",
        branch = "release",
        build = "npm ci",
        config = function() require("plugins.coc") end,
    },

    -- rainbow
    {
        "luochen1990/rainbow",
        config = function()
            vim.g.rainbow_active = 1
        end,
    },

    -- Maximizer
    {
        "szw/vim-maximizer",
        config = function()
        -- Normal 模式下 <leader>m 切换窗口最大化
        vim.keymap.set("n", "<leader>m", ":MaximizerToggle<CR>", { silent = true })

        -- Visual 模式下 <leader>m 切换最大化后，恢复 visual 模式
        vim.keymap.set("v", "<leader>m", ":MaximizerToggle<CR>gv", { silent = true })
        end
    },

    -- Telescope
    {
        "nvim-telescope/telescope.nvim",
        dependencies = { 'nvim-lua/plenary.nvim' },
        config = function() require("plugins.telescope") end,
    },

    -- Telescope fzf native
    {
        "nvim-telescope/telescope-fzf-native.nvim",
        build = "cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release && cmake --build build --config Release",
    },


    -- Gitsigns
    {
        "lewis6991/gitsigns.nvim",
        config = function()
            vim.schedule(function()
                require('gitsigns').setup {
                    current_line_blame = true,
                    current_line_blame_opts = {
                        virt_text = true,
                        virt_text_pos = 'eol', -- 'eol' | 'overlay' | 'right_align'
                        delay = 300,
                        ignore_whitespace = false,
                        virt_text_priority = 100,
                        use_focus = true,
                    },
                }
            end)
        end,
        event = { "BufReadPre", "BufNewFile" },
    },

    -- Indent blankline
    {
        "lukas-reineke/indent-blankline.nvim",
        config = function()
            require("ibl").setup()
        end,
    },



    {
      "navarasu/onedark.nvim",
      priority = 1000,
      config = function()
        local onedark = require('onedark')
        onedark.setup {
          style = 'dark',
          highlights = {
            ["@variable.python"] = { fg = "#e86671" },
          },
        }
        onedark.load()

        -- 确保 colorscheme 加载后强制修正 illuminate 高亮
        vim.api.nvim_create_autocmd("ColorScheme", {
          pattern = "*",
          callback = function()
            vim.cmd [[
              hi! IlluminatedWordText  guibg=#5c6370 guifg=NONE guisp=#abb2bf
              hi! IlluminatedWordRead  guibg=#5c6370 guifg=NONE guisp=#abb2bf
              hi! IlluminatedWordWrite  guibg=#5c6370 guifg=NONE guisp=#abb2bf
            ]]
          end,
        })
      end,
    },
    -- Treesitter
    {
        "nvim-treesitter/nvim-treesitter",
        build = ":TSUpdate",
        config = function()
            require('nvim-treesitter.configs').setup {
                ensure_installed = { "python", "lua", "json", "markdown", "bash", "cpp" }, -- 可按需添加
                highlight = {
                    enable = true,
                    additional_vim_regex_highlighting = false,
                },
                indent = {
                    enable = true
                }
            }
        end,
    }

}
